home *** CD-ROM | disk | FTP | other *** search
- //
- // Fichero: IMPR.H
- //
- // Versi≤n: 1.0
- // Autor: Antonio M. EstΘvez Lorenzo
- // Prop≤sito: Declaraci≤n de las clases para IMPR.CPP
- //
-
- #ifndef __IMPR
- #define __IMPR
-
- #ifndef __MENSAJES
- #include "mensajes.h"
- #endif
-
- #include "impr.ids"
-
- #ifndef __COMBOBOX_H
- #include <combobox.h>
- #endif
-
- extern "C" {
- #include <drivinit.h>
- }
-
- #define IE_OK 0
- #define IE_NOVALIDO -1
- #define IE_NOASOCIADO -2
-
- #define IF_GRAFICOS 0x01
- #define IF_TEXTO 0x02
- #define IF_AMBOS 0x03
-
- _CLASSDEF(TImpresora)
- class TImpresora
- {
- protected:
- Pchar Titulo;
- BOOL Banding;
- BOOL ForzarTodos;
- public:
- TImpresora(Pchar Titulo);
- virtual ~TImpresora();
- virtual int ImprimePagina(HDC Hdc, WORD Pag, SIZE Dim, LPRECT Rect, WORD Flags)= 0;
- virtual BOOL HayMasPaginas();
- friend class _CLASSTYPE TImpr;
- };
-
- typedef WORD (FAR PASCAL *PTModoDispos)(HWND, HANDLE, LPSTR, LPSTR);
-
- _CLASSDEF(TImpr)
- class TImpr
- {
- void CalcBandingFlags();
- friend class _CLASSTYPE TDlgConfigImpr;
- protected:
- Pchar Dispos, Driver, Puerto;
- int Estado, Error;
- HINSTANCE ModuloDispos;
- LPFNDEVMODE ModoDisposExt;
- PDEVMODE ConfigDispos;
- PTModoDispos ModoDispos;
- int LongConfig;
- void ImprDefecto();
- public:
- TImpr();
- virtual ~TImpr();
- virtual void InformaError(PTImpresora);
- virtual HDC GetDC();
- void IniciaDispos();
- void Configurar(PTWindowsObject);
- void SelecDispos(Pchar dispos, Pchar driver, Pchar port);
- BOOL Imprime(PTWindowsObject parent, PTImpresora);
- SIZE DimPaginaMM();
- SIZE DimPaginaPixels();
- };
-
- _CLASSDEF(TDlgAbortImpr)
- class TDlgAbortImpr: public TWindDlg
- {
- public:
- TDlgAbortImpr(PTWindowsObject parent,
- Pchar titulo, Pchar Disp, Pchar Port);
- virtual void SetupWindow();
- virtual void WMCommand(RTMessage)= [WM_FIRST + WM_COMMAND];
- };
-
- _CLASSDEF(TDatosImpr);
- class TDatosImpr
- {
- protected:
- Pchar Dispos;
- Pchar Driver;
- Pchar Puerto;
- public:
- TDatosImpr *Siguiente;
- TDatosImpr(Pchar dispos, Pchar driver, Pchar puerto, PTDatosImpr Ultimo= NULL);
- ~TDatosImpr();
- friend class _CLASSTYPE TDlgConfigImpr;
- };
-
- _CLASSDEF(TDlgConfigImpr)
- class TDlgConfigImpr: public TWindDlg
- {
- TComboBox *ListImpr;
- TDatosImpr *DatosImpr, *tmpDatosImpr;
- void Configurar();
- protected:
- PTImpr Impr;
- virtual void SetupWindow();
- virtual void Config(RTMessage) = [ID_FIRST + boConfigImpr];
- virtual void Cancel(RTMessage) = [ID_FIRST + IDCANCEL];
- virtual void Ok(RTMessage) = [ID_FIRST + IDOK];
- public:
- TDlgConfigImpr(PTWindowsObject parent, int ResID, PTImpr impr);
- virtual ~TDlgConfigImpr();
- // friend class _CLASSTYPE TDatosImpr;
- };
-
- #endif
-